/**
 * 观察者
 * @class dep
 * addSub 添加观察者
 * notify 发送通知
 */
class Dep {
  constructor() {
    // 存储所有的观察者
    this.subs = [];
  }

  addSub(sub) {
    if (sub && sub.update) {
      this.subs.push(sub);
    }
  };

  notify() {
    this.subs.forEach(sub => {
      // 执行update方法，更新视图
      sub.update();
    })
  };
}